﻿<?php

/**
 * @author kelvin
 * @copyright 2012
 */

?>
Tài liệu nghiên cứu codeIgniter
- Cài đặt controller mặc định : vào application/config/router.php dòng 41 - set controller
- Viết controller : tạo 1 class mới trong thư mục controller
    + Đặt tên class theo quy ước : tên controller là tên class
    + Mỗi class sẽ extends CI_Controller (ver 2.0 trở lên) hoặc Controller(1.0)
    + Các phương thức khai báo trong class hoạt động như sau:
        * load các helper để xuất ra dữ liệu. Dữ liệu được tập hợp lại dưới dạng array
        * load view tương ứng và đổ dữ liệu về. 
        * trong view tương ứng dữ liệu được lấy ra từ các biến, mỗi biến là 1 index của array data mà phía controller xuất ra
        * có thể load thư viện của riêng mình bằng cách thêm file class vào trong thư mục library của CI
        sau đó sử dụng bằng cách load->library('tên class'); 
                và gọi hàm thành viên của class này như sau : $this->tên_class->tên_hàm;
- ở phần view:
    + gọi các helper như sau : $this->load->helper('tên helper');
    + thường thì ở phần view chỉ cần dùng đến các helper là đủ;
- Cấu trúc url : kể từ index.php thì các tham số lần lượt là tên controller, tên action(function), tham số nếu có
    + nếu ko tìm thấy controller thì tự động chọn controller mặc định và tham số truyền vào sau index.php chính là action
    + lời khuyên : nên điền đầy đủ url :controller/action
- Rewrite URL
    + Giấu index.php khi gọi controller bằng htaccess :
        RewriteEngine on
        RewriteCond $1 !^(index\.php|images|robots\.txt)
        RewriteRule ^(.*)$ /index.php/$1 [L]



- Tạo 1 trang web với template
    + Trong controller chính có 1 hàm ALL chức năng tạo ra các khối chung của 1 trang web, return về 1 mảng
            sau đó trong mỗi 1 trang con , ví dụ list sản phẩm, tạo ra 1 function list ra, thì đầu tiên sẽ 
            gọi hàm ALL này, sau đó thêm dữ liệu chính cho content trang, rồi trả về
    + Ở phần view, file template.php có nhiệm vụ định hình cấu trúc của site, các file view con có nhiệm vụ 
    đổ nội dung về 